
/**
 * 一个贫血虚拟钱包模型
 * 实现功能：充值，提现，支付，查询，冻结，透支
 * Controller层：写明钱包功能的接口
 * Service层：写明功能的实现
 * Repository层：与假定的数据库交互。
 * Wallet:BO
 * 由于没有数据库操作，约定：只实现service逻辑操作，并不改变真实的数据库值。
 */

public class test {

    //    private Service service;
    public static void main(String args[]) {
//          Service service = new Service();
//          Wallet wallet = service.getWallet(1);
//        System.out.println(service.getMoney(1));
//        service.deposit(1,100);
//        service.CashOut(1,200);
//        service.pay(1,500);
////        System.out.println(service.getMoney(1));
//        System.out.println(service.getChecker());
//        service.getApply(1,500);
//        service.apply(1,true);
//        service.getApply(1,500);
//        System.out.println("因为没有在数据库真正改变状态");
//        service.freeze(1,500);
//
//        service.getChecker();
        Controller controller = new Controller();
        controller.getWallet(1);
        controller.deposit(1, 100);
        controller.CashOut(1, 200);
        controller.pay(1, 500);
        controller.freeze(1, 200);
        controller.apply(1, true);
        controller.getApply(1, 500);
        controller.showChcker();


    }
}
